package advance.x000.acw_90;


import java.util.Scanner;

/**
 * 求 a 乘 b 对 p 取模的值。
 * <p>
 * 输入格式
 * 第一行输入整数a，第二行输入整数b，第三行输入整数p。
 * <p>
 * 输出格式
 * 输出一个整数，表示a*b mod p的值。
 * <p>
 * 数据范围
 * 1≤a,b,p≤1018
 * 输入样例：
 * 3
 * 4
 * 5
 * 输出样例：
 * 2
 */
public class Main {

    public static void main(String[] args) {
        Main solution = new Main();
        Scanner scanner = new Scanner(System.in);
        long a = scanner.nextLong();
        long b = scanner.nextLong();
        long p = scanner.nextLong();
        long ans = solution.mul(a, b, p);
        System.out.println(ans);
    }


    /**
     * 利用long 溢出计算大值
     * java 无无符号long
     */
    public long mul(long a, long b, long p) {
        a %= p;
        b %= p;
        long c = (long) a * b / p;
        long x = a * b;
        long y = c * p;
        long ans = (long) (x % p) - (long) (y % p);
        if (ans < 0) ans += p;
        return ans;
    }

    /**
     * 类似于快速幂
     * 正数b由二进制表示
     */
    public long mul1(long a, long b, long p) {
        long ans = 0;
        for (; b != 0; b >>= 1) {
            if ((b & 1) == 1) {
                ans = (ans + a) % p;
            }
            a = (a * 2) % p;
        }
        return ans;
    }
}
